/**
 * 
 */
package org.xlab.baseframework.web.util;

import java.io.Serializable;

import org.xlab.baseframework.web.enumerate.EnumBrowserType;
import org.xlab.baseframework.web.enumerate.EnumOSType;

import com.vaadin.terminal.gwt.server.WebBrowser;

/**
 * @author MaKuBEX
 * 
 */
public class BrowserUtil implements Serializable {

	/**
	 * @serialField
	 */
	private static final long serialVersionUID = 6265494123657382010L;

	/**
	 * 获取浏览器类型
	 * 
	 * @param webBrowser
	 *            浏览器实体
	 * @return 浏览器类型
	 */
	public static EnumBrowserType getBrowserType(WebBrowser webBrowser) {
		if (webBrowser.isChrome()) {
			return EnumBrowserType.CHROME;
		} else if (webBrowser.isOpera()) {
			return EnumBrowserType.OPERA;
		} else if (webBrowser.isFirefox()) {
			return EnumBrowserType.FIREFOX;
		} else if (webBrowser.isSafari()) {
			return EnumBrowserType.SAFARI;
		} else if (webBrowser.isIE()) {
			return EnumBrowserType.IE;
		} else {
			return EnumBrowserType.UNKNOWN;
		}
	}

	public static EnumOSType getOperatingSystem(WebBrowser webBrowser) {
		if (webBrowser.isWindows()) {
			return EnumOSType.WINDOWS;
		} else if (webBrowser.isMacOSX()) {
			return EnumOSType.MACOSX;
		} else if (webBrowser.isLinux()) {
			return EnumOSType.LINUX;
		} else {
			return EnumOSType.UNKNOWN;
		}
	}
}
